package cn.du-jinhao.rj2.config;

import com.jfinal.config.Constants;
import com.jfinal.config.Handlers;
import com.jfinal.config.Interceptors;
import com.jfinal.config.JFinalConfig;
import com.jfinal.config.Plugins;
import com.jfinal.config.Routes;
import com.jfinal.ext.handler.ContextPathHandler;
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.druid.DruidPlugin;
import com.jfinal.template.Engine;

public class DefaultConfig extends JFinalConfig {

 @Override
 public void configConstant(Constants me) {
  // 加载少量必要配置，随后可用PropKit.get(...)获取值

  PropKit.use("config.properties");
  me.setDevMode(PropKit.getBoolean("DevMode",false));
  me.setMaxPostSize(100 * 1024 * 1024);
 }

 @Override
 public void configRoute(Routes me) {
  // 添加路由

 }

 @Override
 public void configEngine(Engine me) {

 }

 @Override
 public void configPlugin(Plugins me) {

  // 配置数据库连接池插件

  DruidPlugin druidPlugin = new DruidPlugin(PropKit.get("jdbc.url"), PropKit.get("jdbc.username"),
    PropKit.get("jdbc.password").trim());
  me.add(druidPlugin);
  // 配置ActiveRecord插件

  ActiveRecordPlugin arp = new ActiveRecordPlugin(druidPlugin);
  // 所有映射在 MappingKit 中自动化搞定

  me.add(arp);
 }

 @Override
 public void configInterceptor(Interceptors me) {
  // Auto-generated method stub

 }

 @Override
 public void configHandler(Handlers me) {
  me.add(new ContextPathHandler("ContextPath"));// 设置上下文路径,防止样式丢失

 }
}